Conventionally, there is known a so-called autonomous-traveling type vacuum cleaner (cleaning robot) which autonomously travels on and cleans a cleaning-object surface while detecting an obstacle or the like by using, for example, a sensor or the like.
Generally, since various obstacles of different shapes or placements are present on the cleaning-object surface, it is desirable that the cleaning-object surface can be cleaned without gaps as much as possible while those obstacles are effectively avoided. However, sensors mounted on such vacuum cleaners are ordinarily infrared sensors, ultrasonic sensors and the like and so it is not easy to directly discriminate an obstacle by a sensor.
Accordingly, it is conceivable that, for example, by scanning an obstacle with a sensor while swinging the vacuum cleaner, a shape of the obstacle is discriminated and a type of the obstacle is inferred. However, this action results in an unnecessary action as a cleaning action and moreover entering narrow spots surrounded by obstacles or escaping from narrow spots involves such scanning every time, leading to worse efficiency.
Consequently, efficient cleaning of narrow spots to be enabled while obstacles are effectively avoided is desired.